const Koa = require('koa');
const app = new Koa();
const json = require('koa-json'); //将http响应的数据转换为json格式
const bodyParser = require('koa-bodyparser'); //解析http请求的消息体
const cors = require('@koa/cors'); //解决跨域问题
const { addAliases } = require("module-alias") //路径别名
addAliases({
    '@': __dirname
});

// 接口
const router = require('./router');
// 统一接口响应数据格式：中间件
const responseHandler = require('@/config/result');
// 捕获错误的中间件
const errorHandler = require('@/config/errorHandler');

app.use(json());
app.use(bodyParser());
app.use(cors());
app.use(responseHandler); 
app.use(errorHandler); //一定要在路由之前注册错误处理中间件
app.use(router.routes()).use(router.allowedMethods()); //解决请求方式错误的返回

// router.get('/apia', (ctx) => {
//     const { name } = ctx.query;
//     console.log(name);
//     console.log("8989");
//     ctx.body = { name: "张三", age: 18 };
//     ctx.status = 200;
// });

// router.post('/apib', (ctx) => {
//     const {name, age} = ctx.request.body;
//     console.log(name, age);
// })

app.listen(7000);
console.log("7000端口已启动!");
